Переменные и типы данных

Тип переменной – характеристика, определяющая формат представления данных в памяти компьютера, множество допустимых значений этих данных и совокупность операций над ними. Зная тип переменной, компилятор выделит для нее необходимое количество ячеек памяти и будет знать, какого рода данные будут храниться в этой переменной.

В языке Си имеется несколько базовых типов:
char – символ;
int – целое число;
float – число с плавающей точкой одинарной точности;
double – число с плавающей точкой двойной точности.

Также имеется несколько квалификаторов, которые используются вместе с базовыми типами. Квалификаторы short и long применяются к целому типу int. Квалификатор short применяется в тех случаях, когда заранее известно, что переменная будет принимать достаточно небольшие целые значения. Если переменная может принимать большие целые значения, то используется квалификатор long. Ниже приводится таблица базовых типов данных с указанием требуемого количества памяти и диапазона значений.

Тип Размер(в байтах) Диапазон
char 1 -128 – 127
short 2 -32 768 – 32 767
int 4 -2 147 483 648 – 2 147 483 647
long long int 8 -9 223 372 036 854 775 808 –
9 223 372 036 854 775 807
float 4 1.2e-38 – 3.4e+38
double 8 2.2e-308 – 1.7e+308

Разница между типами заключается в их свойствах. Например, float нужен для дробных чисел, а int для целых. Нужно с умом выбирать тип переменных, иначе можете потерять данные. Также не используйте большие типы данных по типу long, если число заведомо маленькое.

Операции и выражения

Арифметические операции

К арифметическим операциям относят сложение(+), вычитание(-), умножение(*), деление(/), остаток от деления(%). Деление целых чисел сопровождается отбрасыванием дробной части. Выражение a % b дает остаток при делении a на b. Например, после выполнения следующей части программы:

  1. int a = 5, b = 3, q, r;
  2. q = a / b;
  3. r = a % b;

Переменная q будет иметь значение 1, а r будет равна 2. Заметим, что операция % применяется только к целым числам.

Если мы хотим произвести деление с остатком, то все переменные должны быть типа float или double, иначе можем потерять данные.

Операции сравнения и логические операции

К операциям сравнения относят следующие операции: больше или равно (>=), больше (>), меньше или равно (<=), меньше (<), равно (==), не равно (!=), а к логическим операциям – логическое И (&&), логическое ИЛИ (||), отрицание НЕ (!).

Выражения, между которыми находятся операции && и ||, вычисляются слева направо, причем вычисление значения выражения прекращается сразу же, как только становится ясно, каким будет результат – истинным или ложным. Заметим, что приоритет операции && выше приоритета операции ||.

Операция присваивания

Общий вид операции присваивания следующий:
имя переменной = выражение;
Например:

  1. float a, b, c; // объявляем три переменные
  2. a = 0.3; // переменной a присваиваем значение 0.3
  3. b = 0.4; // переменной b присваиваем значение 0.3
  4. c = a + b; // переменной c присваиваем сумму a и b

В языке Си для компактной записи выражений, где участвуют операция присваивания, имеются следующие специальные арифметические операции:

Операция Пример Эквивалент
+= a += 10; a = a + 10;
-= a -= 2; a = a - 2;
*= a *= 5; a = a * 5;
/= a /= 10; a = a / 10;
%= a %= 3; a = a % 3;

Операции инкремента и декремента

Очень часто в программах к переменной прибавляется или из нее вычитается единица. Увеличение значения на 1 называется инкрементом, а уменьшение на 1 – декрементом. Для данных действий предусмотрены специальные операции: операция инкремента (++), которая увеличивает значение переменной на 1, и операция декремента (--), которая, в свою очередь, уменьшает значение переменной на 1.

Следующие три выражения приведут к одному и тому же результату:

x++; x = x + 1; x += 1;

ИЛИ

x--; x = x - 1; x -= 1;

Code.C © Copyright Павел Калашников 2021
обратная связь code.c04@mail.ru